package by.vkhalko.asamo.services;

import java.util.List;

import org.springframework.transaction.annotation.Transactional;

import by.vkhalko.asamo.datamodel.Company;
import by.vkhalko.asamo.datamodel.Customer;
import by.vkhalko.asamo.datamodel.Person;

public interface CustomerService {

	Customer get(Long id);

	@Transactional
	void saveOrUpdate(Customer customer);

	@Transactional
	void delete(Customer customer);

	@Transactional
	void deleteAll();

	List<Customer> getAllCustomers();

	List<Customer> getAllByPerson(Person person);

	List<Customer> getAllByCompany(Company company);

}
